This invention relates to a timeout monitoring system used for sensing abnormalities in a computer system or a control system, and more particularly to a timeout monitoring system capable of monitoring and sensing a timeout at a plurality of levels by use of hierarchized software programs.
This application is based on Japanese Patent Application No. 8-218684, filed Aug. 20, 1996, the content of which is incorporated herein by reference.
In the field of sensing abnormality in the computer system or the like, a timeout monitoring system using a watchdog timer has been known.
FIG. 4 is a block diagram of the configuration of watchdog timer mechanism applied to a timeout monitoring system of this type. The watchdog timer mechanism comprises a timeout monitoring process 1 in the user layer, a watchdog timer 2 in the hardware layer, a process management subsystem in the OS layer, and an OS interval timer 4 in the hardware layer. The individual layers can operate at high speeds in this order: the hardware layer, OS layer, and user layer.
The timeout monitoring process 1 sets a timeout value in the watchdog timer 2 at regular intervals of time and thereafter requests the process management subsystem 3 to execute the process again after a specific period of time and then goes into the holding state.
The process management subsystem 3 manages a plurality of process schedule queues and treats the request for reexecution as one of the process schedule queues.
The watchdog timer 2 includes a setting register 2a, an operational comparator 2b, a timer 2c, and a timeout notifying section 2d. When a timeout value is set in the setting register 2a, the watchdog timer causes the operational comparator 2b to compare the timeout value with a reference value, while causing the timer 2c to count down the timeout value. When the result of the comparison has shown that the timeout has not been set again within a specific period of time, the timeout notifying section 2d outputs a timeout notice.
The OS interval timer 4 starts the process management subsystem 3 at regular intervals of several tens of milliseconds.
Each time being started by the OS interval timer 4, the process management subsystem 3 reschedules the timeout monitoring process 1 and each execution process (not shown) on the basis of the execution condition and priority for each process in each process schedule key. As a result, although the process management subsystem 3 is started every several tens of milliseconds, the interval of time at which the timeout monitoring process is started amounts to several hundreds of milliseconds.
Consequently, the timeout value the timeout monitoring process 1 sets in the watchdog timer 2 is of the order of several seconds.
With the timeout monitoring system, however, the time required for the timeout monitoring process 1 to be restarted is influenced by the schedule policy of the process management subsystem 2, which makes it impossible to set a timeout value smaller than a value of the order of several seconds in an ordinary OS, resulting in the problem of taking a longer time to sense abnormality.
The single watchdog timer 2 can monitor only one type of timeout and therefore cannot output a notice of more than one type of timeout, which leads to the problem of being unable to monitor more than one timeout or abnormality.